查看原文
其他

LLM-Rec:基于提示大语言模型实现个性化推荐

灵度智能 灵度智能
2024-09-09

LLM-Rec: Personalized Recommendation via Prompting Large Language Models


随着大语言模型(LLM)在自然语言处理中的成功应用,研究者开始探索其在推荐系统中的潜力。现有研究主要集中在直接利用LLM进行推荐。与之不同,本研究提出了LLM-Rec框架,目标是通过不同的提示策略产生针对项目的增强输入文本,以提高个性化内容推荐的性能。


LLM-Rec包含四种提示策略:(1)基本提示,(2)面向推荐的提示,(3)面向用户接受度的提示,(4)面向推荐和面向用户接受度相结合的提示。


在MovieLens数据集上进行了详尽的实验分析。结果表明,将原始内容描述与LLM生成的增强输入文本相结合,可以显著提升推荐性能。这一发现强调了结合多样化的提示和输入增强技术以提升LLM的推荐能力的重要性。本研究为利用LLM增强个性化内容推荐提供了有价值的见解。


论文地址:https://arxiv.org/pdf/2307.15780.pdf


摘要


本文研究了利用大型语言模型(LLMs)进行输入增强的各种提示策略,以提高个性化推荐性能。实验结果表明,采用LLM生成的增强输入文本可以提高推荐性能。推荐驱动和参与引导提示策略可以引出LLM对全局和局部项目特征的理解,强调了利用多样的提示和输入增强技术来增强LLMs的推荐能力的重要性。


简介


大型语言模型在推荐系统中的应用受到了广泛关注。研究表明,直接使用LLM作为推荐模型的方法是有效的。这种方法的原理是构建任务特定的提示,包括推荐任务、用户资料、物品属性和用户-物品交互。然后将这些提示作为输入提供给LLM,指示其预测给定用户和物品之间的交互可能性。


本研究探讨了利用LLMs来增强个性化内容推荐的提示策略,而不是直接将LLMs用作推荐模型。通过利用经过精细调整的LLMs生成高质量和上下文感知的输入文本,以增强推荐。


本文提出了LLM-Rec提示策略,包括基本提示、推荐驱动提示、参与引导提示和推荐驱动与参与引导提示的组合,旨在提高LLM生成输入文本的能力,提高内容推荐的准确性和相关性。


通过全面的实证实验,我们评估了LLM-Rec框架的有效性,并将其与基准方法进行了比较。我们的研究揭示了不同提示策略对推荐性能的影响,并揭示了利用LLM进行个性化推荐的潜力。


LLM-Rec Prompting



Basic prompting


我们在以下实验中考虑了三种基本的提示变体,分别称为ppara,ptag和pinfer。

  • ppara:指示LLM用相同的信息而不引入任何额外细节来改写原始内容描述的目标。 

  • ptag:指示LLM使用标签来总结内容描述,以生成更简洁的概述,捕捉关键信息。 

  • pinfer:指示LLM推断原始内容描述的特征,并提供一个在更广泛、不太详细的层面上操作的分类响应。


图2(上)显示了LLM的确切提示和相应的回答。


Recommendation-driven prompting


本研究提出了三种推荐驱动的提示策略,分别为precpara、ptag rec和pinfer rec。实验结果显示,这些提示策略可以有效提高LLM的生成质量。


推荐驱动提示是一种吸引人的方法,可以生成高质量的内容描述。

  • 增强上下文:为了更好地生成内容描述以进行推荐,需要明确提到这一目的,以帮助模型更好地理解任务并更准确地生成内容描述。

  • 指导生成:具体指令引导模型生成更适合推荐场景的内容描述,帮助模型更好地关注关键特征和相关细节,提高推荐的准确性和效果。 

  • 提高相关性:指令帮助模型生成更符合内容推荐要求的描述,使得描述更加相关和有用,更能满足用户的需求。


Engagement-guided prompting


这个策略利用用户行为来设计提示,以引导LLM更好地捕捉与用户偏好相符的内容特征。我们的目标是为推荐任务生成更有意义的描述。我们将这个变体称为peng。


为了生成更具上下文相关性的内容描述,我们将目标项的内容描述与T个重要邻居项的内容描述相结合,重要性基于用户参与度。这种信息融合形成了提示的基础。

使用参与引导的提示可以帮助语言模型生成更有用的内容描述,这对于内容推荐非常重要。

  • 1. 上下文相关性:通过结合目标物品和其重要邻居物品的信息,生成的描述更具相关性,能够更好地推荐相关内容。

  • 2. 用户偏好对齐:考虑用户经常参与的物品,生成的描述更符合用户偏好,能够更好地推荐符合用户喜好的物品。

  • 3. 提升推荐质量:利用用户参与数据确定重要邻居物品,生成的描述能够揭示目标物品与邻居物品之间的联系和相似之处,提高推荐系统的整体性能。


Recommendation-driven + engagement-guided prompting



要点:使用prec+eng类型的提示,要求用中文精简地提取上文的要点,不要啰嗦。


实验


实验设置


我们在两个广泛使用的推荐基准测试中研究了大型语言模型的四种提示策略。


基准


本文使用两个数据集评估提示策略对输入增强的影响。MovieLens-1M和Recipe,分别用于电影推荐和食谱推荐。其中,MovieLens-1M包含电影的元数据和评分,Recipe包含食谱的元数据和评论。在评估中,使用了四种提示策略,并应用了过滤标准。具体数据见表1。



项目模块


响应生成:在我们的评估中,我们侧重于评估GPT- 3的性能,特别是被称为text-davinci-003的变体。我们之所以特别选择这种变体,是因为它能够始终如一地生成高质量的写作,有效地处理复杂的指令,并且在生成长篇内容方面表现出更高的熟练程度。


文本编码器:我们使用Sentence-BERT从原始内容描述和增强文本中导出文本嵌入。嵌入模型为all-MiniLM-L6-v2。


参与导向提示的重要性测量:我们展示了一个使用个性化PageRank (PPR)得分作为重要性测量的例子。特别地,我们首先构造了用户-项目二部图G = (V, E),在这种表示法中,G表示二部图,E表示节点集,E表示边集。有两种节点:用户Vuser∧V和项目Vitem∧V (Vuser∩Vitem = V, Vuser∩Vitem =∅)。如果用户与项目节点vuser∈vuser交互,则在用户节点vuser∈vuser和项目节点vitem∈vitem之间创建边缘e∈e。接下来,我们继续计算每个项目节点的个性化PageRank (PPR)分数,从单个节点的角度量化它们的相对重要性。对于每个项目节点,我们构造一个有效相邻项目的集合。通过识别PPR得分最高且与目标道具节点具有相同类型的前T个道具节点,我们根据用户粘性确定了基本的邻居道具。这种方法背后的基本原理是,当用户经常使用两个项目时,用户偏好往往会有更大的相似性。通过整合这些信息,我们的目标是更有效地捕获用户偏好,从而提高内容推荐的性能。对于这两个数据集,我们设置T = 3。


用户模块


我们使用嵌入表将用户ID转换为潜在表示,输出维度为128。

推荐模块


研究中探索了四个推荐模块。

  • ItemPop:根据物品的流行度进行推荐。

  • MLP:这个推荐模块是多层感知器(MLP)和点积的组合。为简单起见,我们将其称为MLP。将扩充文本嵌入和原始内容描述嵌入通过串联组合,然后通过两层MLP进行传递。第一个MLP层的输出维数,以及第二个MLP层的输入/输出维数,都设置为128。在第一个MLP层上应用ReLU激活函数和dropout层。接下来,计算用户和项目的潜在嵌入的点积,然后将结果值传递给Sigmoid函数。这个Sigmoid函数将点积转换为用户和项目之间的最终相关性评分。

  • AutoInt:提出了一种带有残差连接的多头自关注神经网络,用于明确建模低维空间中的特征交互。

  • DCN- v2:DCN在每一层显式地使用特征交叉。在我们的实验中,我们采用了DCN的改进版本,即DCN- v2。


模型训练


本文介绍了使用二元交叉熵损失函数训练模型的方法,将每个用户-物品交互视为正样本,并随机选择未记录交互的用户和物品作为负样本。为了防止过拟合和优化训练效率,采用了早期停止机制。作者还尝试了使用Bayesian Personalized Ranking (BPR) Loss,但发现与二元交叉熵损失函数相比,性能并不卓越。因此,选择使用二元交叉熵损失函数作为主要损失函数。


评估协议


为了评估推荐性能,采用了Wei等人使用的评估方法。将数据集随机分成训练、验证和测试集,比例为8:1:1。使用随机负采样创建负训练样本。


验证和测试集中,我们将每个观察到的用户-物品交互与用户以前未交互过的1,000个物品配对。重要的是要注意,训练集中的负样本与验证和测试集中未观察到的用户-物品对没有重叠。这确保了评估数据的独立性。


本文使用Precision@K、Recall@K和NDCG@K等指标评估了前K个推荐结果的性能,其中K=10。我们在五个不同的测试集上报告平均分数,全面评估了推荐性能。


超参数设置


参数随机初始化,使用AdamW算法进行优化,学习率和dropout率的超参数通过网格搜索确定。在验证集上达到最高的Recall@K值的设置被选择用于测试集的评估。

实现细节


使用PyTorch实现方法并进行实验,使用torch-ppr库计算PPR分数。实验在一台NVIDIA A100 GPU上进行,每次实验只在一个GPU上运行。


结果


LLM-Recboost在推荐性能方面表现优异,超过了其他更复杂的基于特征的推荐方法,包括简单的MLP模型。表2总结了基线的推荐性能。



本实验旨在研究各种提示策略对文本生成效果的影响。实验保持推荐和用户模块一致,只改变我们提出的提示策略生成的增强文本。比较基本提示、推荐驱动提示、参与引导提示和推荐驱动+参与引导提示四种策略生成的响应效果。每个响应都会先进行编码,然后与原始内容描述的嵌入进行拼接。CD代表原始内容描述,没有引入增强文本。输入项仅包括原始内容描述的嵌入。



图4显示了每种提示策略的推荐性能。从图中可以得出两个关键观点。首先,增强文本和原始内容描述的组合可以提高推荐性能。这一发现表明,基本提示、推荐驱动提示和参与引导提示这三种类型的提示为推荐模块提供了额外和有价值的信息,以有效地建模内容推荐。


研究发现,推荐性能的改进程度取决于数据集的特征。通过对比Ppara和Ppararec的案例研究,发现Ppararec的回应中包含了与用户偏好相关的词语,这些词语可以表达用户对物品的喜好。同时,还发现了与用户满意度相关的词语。本文研究了基于用户偏好的推荐策略,通过推荐驱动的提示策略生成的单词可以提高推荐性能。用户偏好可以通过流派(例如古典、动作、冒险)来定义。


本文研究了在推荐系统中,用户反馈的文本对推荐效果的影响。通过构建两种不同的反馈变体,Pparamask和Pparakeyword,研究发现,当Ppara的反馈中独特的词被屏蔽时,推荐效果会明显下降,说明反馈中的补充信息对推荐效果至关重要。同时,研究还发现,将关键词加入反馈中,而不是所有的反馈词汇,可以获得更好的推荐效果。


对比pinfer和precinfer,发现当LLM被指示推断原始内容描述的特征时,性能下降。这表明降低的推荐性能可能源于推断上下文和原始上下文之间的差异。换句话说,pinfer需要超出原始上下文提供的信息进行推断,因此效果较差。相反,对于ppara和ptag,推荐驱动的提示是有益的,因为这些提示不依赖于LLM推断超出原始输入的信息。



通过比较peng和CDCD,我们发现peng在推荐性能方面有所改进。我们从peng中挑选了一些示例回答进行详细分析,发现其回答中包含了与用户偏好密切相关的描述性词汇。与precpara的回答相比,peng的回答中的词汇更加精细。值得注意的是,通过推荐驱动和参与引导策略的协同作用,prec+eng的综合回答不仅整合了更具普遍性的用户偏好相关词汇,还包含了明确定义的概念,如流派。



通过将来自不同提示策略的响应的嵌入进行连接,以及与原始内容描述的嵌入交织在一起,可以更深入地探索合并增强文本的质量。将更多信息进行连接有助于提高推荐性能,强调了将增强文本纳入原始内容描述的附加价值。



表3展示了其他连接变体的推荐表现。

  • 随机embeddings:随机化Pall的embeddings。

  • 复制CD embeddings:复制多个CD嵌入以匹配Pall的嵌入维度。

  • 文本连接:先连接响应,再将其转换为嵌入。


讨论


本研究探讨了LLM-Rec提示作为一种简单而有效的机制,通过大型语言模型来改善个性化推荐的有效性。研究结果揭示了几个关键见解。


通过将增强文本与原始内容描述相结合,可以显著提高推荐性能。这使得简单的MLP模型比其他更复杂的基于特征的方法实现更优秀的推荐性能。这突显了将额外的上下文融入推荐过程以促进更准确和相关的推荐的价值,同时还能简化训练过程。


实验结果表明,推荐驱动和参与引导的提示策略可以有效地引导大型语言模型生成针对推荐目的的高质量输入文本。推荐驱动提示策略能够产生更广泛的用户偏好相关术语,而参与引导提示策略则能够获取更细致的关于推荐物品的见解。这表明了这些提示策略在引导模型生成更理想的推荐方面的能力。


将所有增强文本结合起来可以实现最佳的推荐性能,这表明这些策略的互补性以及它们对进一步提高推荐质量的集体影响。


本研究展示了LLM-Rec提示的有效性,可以促进大型语言模型生成个性化推荐的增强和相关输入文本。这些发现有助于推荐系统的进步,强调了深思熟虑的提示设计对于提高推荐性能的重要性。


在使用LLM增强推荐系统输入文本时,我们发现了一个潜在的限制。当提示需要LLM推断额外信息时,推荐驱动的提示策略可能无法产生预期的效果。我们的假设是,推断出的上下文质量可能对整体推荐性能产生未知的影响。因此,需要注意仅修改内容描述的提示和需要推断额外信息的提示之间的区别。


需要仔细考虑和评估所使用的提示,特别是在指导LLM推断超出提供的上下文信息时。虽然推荐驱动的提示策略对于不需要推断的提示有效,但当提示需要LLM推断信息时,其有效性可能会受到影响。需要进一步研究管理和改进推断上下文对推荐结果的质量和影响的技术。


使用参考信号来指导生成个性化内容推荐的模型表现更好,同时也可以简化图神经网络的学习过程。这种参考信号可以用于替代图神经网络的学习过程,从而简化整个模型的架构。


使用经过微调的LLM可以实现零成本的零-shot生成,无需进一步训练即可在未知情境下生成响应或建议。这种零-shot生成能力使得推荐系统具有灵活性和可扩展性,能够有效适应新的领域或情境。


结合参与引导提示和经过微调的LLM的零-shot生成潜力,可以简化模型架构,减少计算复杂度,并扩展推荐系统的适用性。进一步探索和研究这个方向可以开发出高效和有效的个性化推荐技术。


总结


本研究介绍了LLM-Rec提示策略,利用大型语言模型(LLMs)进行输入增强,旨在增强个性化推荐。通过对LLM-Rec的四个变体进行严格实验,我们观察到增强的输入文本和原始内容描述的组合在推荐性能方面有显著改进。


使用LLMs和战略提示技术可以提高个性化推荐的准确性和相关性,训练过程也更容易。通过增加上下文信息,推荐算法能够捕捉更细致的信息,并生成更符合用户偏好的推荐。


LLM-Rec的实验结果强调了在内容推荐中利用LLMs的创新方法的重要性,并展示了通过输入增强来提高推荐性能的价值。个性化推荐在各个领域中继续发挥关键作用,我们的研究为利用LLMs提供了有效的策略,以提供更好的推荐体验。

▌关于我们

灵度智能,我们致力于提供优质的AI服务,涵盖人工智能、数据分析、机器学习、深度学习、强化学习、计算机视觉、自然语言处理、语音处理等领域。提供AI课程、AI算法代做、论文复现、远程调试等服务。如有相关需求,请私信与我们联系。


我们的愿景通过创新创意和智能技术为客户提供卓越的解决方案,助力产业升级和数字化转型。我们的产品和服务将引领行业标准,创造卓越的用户体验。我们的团队致力于创造更智能、更便捷和更高效的生活方式,推动社会进步,致力于创造更美好的未来。

淘宝店铺:公众号后台回复“淘宝”获取店铺地址
商务合作:发送邮件至lingdu_tech@163.com邮箱

关注【灵度智能】公众号,获取更多AI资讯。


继续滑动看下一个
灵度智能
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存